                         VP Alapvet utastsai

==================== Megjegyzs ===========================================

Rvidtsek s jellsek:

  * Egsz szmok 32 bitesek
  * Vals szmok 64 bitesek
  * Egsz szmok mretei: 1, 2 s 4 byte
  * <vX> : X. elem a veremben
  * Par  : Paramter
  * Dsc  : Az utasts lersa C szintaxisban
  * [vX] : Ha a paramter nem nulla, akkor a paramter lesz
           az X. operandusa az utastsnak
  * [X]  : Eljeles szmok [opcionlis]

==================== Alap =================================================

[00] VP vezrls: "\"
  Par: 0: Halt : VP meglltsa
       1: Nop  : IP nvelse
       2: Do   : Az aktulis utastst a verembl veszi

[01] Rendszer hvs: ":"
  Par: rendszer hvs szma

[02] Regiszter a verembe: "<$"
  Par: regiszter szma

[03] Regiszter a verembl: ">$"
  Par: regiszter szma

[04] Eljeltelen 4 byte-os szm a verembe: "#4"
  Par: szm 4. byte-ja

[05] Eljeles 4 byte-os szm a verembe: "X4"
  Par: szm 4. byte-ja

[06] Kvetkez egsz szm byte a verembe: "#1"
  Par: 1 byte-os szm
  Dsc: <v1>=(<v1> << 8)|<Par>

[07] Vals 8 byte-os szm a verembe: ".8"
  Par: szm 8. byte-ja

[08] Kvetkez vals szm byte a verembe: ".1"
  Par: 1 byte-os szm
  Dsc: <v1>=(<v1> << 8)|<Par>

[09] Eljeltelen egsz szm lekrdezse: "#@"
  Par: Szm mrete (1|2|4|8)
  Dsc: <v1>=*<v1>

[0A] Eljeles egsz szm lekrdezse: "X@"
  Par: Szm mrete (1|2|4|8)
  Dsc: <v1>=*<v1>

[0B] Egsz szm megadsa: "="
  Par: Szm mrete (1|2|4|8)
  Dsc: *<v2>=<v1>

[0C] Felcserls: "<>"
  Par: Szm mrete (4|8)
  Dsc: <v1>=<v2> , <v2>=<v1>

[0D] Feltteles ugrs: "?@"
  Dsc: IP=<v2> ? <v1> : IP+1

==================== Aritmetika ===========================================

[0E] Eljel vlts: '~'
  Dsc: <v1>=-<v1>

[0F] sszeads: "+"
  Par: [v1]
  Dsc: <v1>=<v2>+<v1>

[10] Kivons: "-"
  Par: [v1]
  Dsc: <v1>=<v2>-<v1>

[11-12] Szorzs: "[X]*"
  Par: [v1]
  Dsc: <v1>=<v2>*<v1>

[13-14] Oszts: "[X]/"
  Par: [v1]
  Dsc: <v1>=<v2>/<v1>

[15-16] Maradk: "[X]%"
  Par: [v1]
  Dsc: <v1>=<v2>%<v1>

==================== Eltols ==============================================

[17-18] Eltols balra: "[X]<<"
  Par: [v1]
  Dsc: <v1>=<v2> << <v1>

[19-1A] Eltols jobbra: "[X]>>"
  Par: [v1]
  Dsc: <v1>=<v2> >> <v1>

==================== Logikai ==============================================

[1B] Bitenknti NEM: "!"
  Dsc: <v1>=~<v1>

[1C] Bitenknti S: "&"
  Par: [v2]
  Dsc: <v1>=<v2>&<v1>

[1D] Bitenknti VAGY: "|"
  Par: [v2]
  Dsc: <v1>=<v2>|<v1>

[1E] Bitenknti KIZR VAGY: "^"
  Par: [v2]
  Dsc: <v1>=<v2>^<v1>

==================== Relcis =============================================

[1F] Nem nulla: "?:"
  Dsc: <v1>=(<v1>!=0)

[20] Nulla-e: "?0"
  Dsc: <v1>=(<v1>==0)

[21] Egyenl: "=="
  Par: [v1]
  Dsc: <v1>=(<v2>==<v1>)

[22] Nem egyenl: "!="
  Par: [v1]
  Dsc: <v1>=(<v2>!=<v1>)

[23-24] Nagyobb: "[X]>"
  Par: [v1]
  Dsc: <v1>=(<v2> > <v1>)

[25-26] Nagyobb vagy egyenl: "[X]>="
  Par: [v1]
  Dsc: <v1>=(<v2> >= <v1>)

[27-28] Kisebb: "[X]<"
  Par: [v1]
  Dsc: <v1>=(<v2> < <v1>)

[29-2A] Kisebb vagy egyenl: "[X]<="
  Par: [v1]
  Dsc: <v1>=(<v2> <= <v1>)

===========================================================================
